Embodiments of the invention relate to data storage, and in particular, to parity logs for RAID systems with variable capacity media.
All disk devices in a RAID array are accessible at the same time for write operations. RAID stripes are fixed-size, and laid out based on the size of the array. Therefore, the entire stripe may be written essentially in parallel, including the parity.
Tape drives are typically few in number, relative to the number of tape spools/cartridges that hold data, which is quite different than the architecture of disk-based storage systems. It is less likely that all of the tape spools in a Redundant Array of Independent Tapes (RAIT) array are mounted and available at the time of a write operation. Thus, tapes in a RAIT-based storage system a likely to be written consecutively, and not in parallel as disk-based RAID systems typically do.
Tapes have different physical lengths. For instance, tapes' lengths vary due to manufacturing tolerances or differing defect impacts. The capacity of a tape may not be known until the write operation to that tape is complete. Therefore, it is impossible to predetermine the amount of data that can be written to a RAIT array, as is typically done in a disk-based RAID system, because of the varying capacity of tape volumes that part of a RAIT array.